// 导入 获取用户信息的 接口
import { getUserInfoAPI } from '@/api/layout'
// 用户 子模块
const userModule = {
  // 开启子模块的命名空间
  namespaced: true,
  state () {
    return {
      token: '', // 用户token字符串
      userInfo: {}// 用户信息对象
    }
  },
  mutations: {
    // 设置token
    setToken (state, tokenStr) {
      state.token = tokenStr
    },
    // 设置用户信息
    setUserInfo (state, userInfoObj) {
      state.userInfo = userInfoObj
    }
  },
  actions: {
    // 获取用户信息的Action
    async getUserInfoAction (ctx) {
      // 1. 调接口
      const { data: { data } } = await getUserInfoAPI()
      // 2.把后台返回的用户信息对象 提交到mutation中，完成对userInfo的赋值
      ctx.commit('setUserInfo', data)
    }
  }
}
// 默认导出
export default userModule
